﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using MyMvcStoreApplication.Models;
using System.Data;

namespace MyMvcStoreApplication.Repositories
{
    public class ArtistaRepository : IGenericRepository<Artista>, IDisposable
    {
        private MusicStoreEntities db = new MusicStoreEntities();
        
        public List<Artista> GetAll()
        {
            return db.Artistas.
                 OrderBy(a => a.Nombre).
                 ToList();
        }

        public Artista Get(int id)
        {
            return db.Artistas.Find(id);
        }

        public void SaveNew(Artista entidad)
        {
            db.Artistas.Add(entidad);
            db.SaveChanges();
        }

        public void Delete(int id)
        {
            db.Artistas.Remove(this.Get(id));
            db.SaveChanges();
        }

        public void SaveModify(Artista entidad)
        {
            db.Entry(entidad).State = EntityState.Modified;
            db.SaveChanges();
        }

        public void Dispose()
        {
            db.Dispose();
        }

    }
}